A plug-in is a computer program that interacts with a host application, such as a web browser, an email client or a server-side application component, to provide certain specific functionality. In various contexts, a plug-in may also be referred to as a plug-in component, a plugin, a pluggable component, a runtime component, or by other names. Typically, dependencies of a plug-in that represent references to external entities must be resolved during compile-time.